package com.woniuxy.pxxt.service;


import com.woniuxy.pxxt.common.result.Result;
import com.woniuxy.pxxt.common.vo.exam.ExamAnswerVo;
import com.woniuxy.pxxt.common.vo.test.TestVo;
import com.woniuxy.pxxt.entity.Test;

/**
 * 考试的题目(PxxtTest)表服务接口
 *
 * @author makejava
 * @since 2022-03-07 16:28:53
 */

public interface TestService {
  /**
   ** @Todo 添加试题方法
   ** @ChangeLog : 1. 创建 (2022/3/7 21:14 [陈子遥]);
   ** @param
   ** @return Result
   */

    Result addTest(TestVo test);

    /**
     ** @Todo 删除题库中试题方法
     ** @ChangeLog : 1. 创建 (2022/3/7 21:14 [陈子遥]);
     ** @param
     ** @return
     */
    Result deleteById(Integer id);

    /**
     ** @Todo 查询题库中所有试题的方法
     ** @ChangeLog : 1. 创建  [陈子遥];
     ** @Date 2022/3/8 : 11:38
     ** @param
     ** @return
     */
    Result findTest(Integer currentPage, Integer pageSize, Test test);

    /**
     ** @Todo 将答案与试题匹配
     ** @ChangeLog : 1. 创建  [陈子遥];
     ** @Date 2022/3/8 : 21:18
     ** @param
     ** @return
     */



    /**
     * <P>Author ideaAdmin
     * <P>TODO:查询这个用户的这个培训的成绩
     * <P>Date 17:16 2022/3/8
     * <P>* @param userId 用户id
    * @param trainId  培训id
     * <P>* @return com.woniuxy.pxxt.common.result.Result
     **/
    Result findTestScore(Integer userId, Integer trainId);


    /**
     ** @Todo 根据试题难度或者单选多选查找题库的试题
     ** @ChangeLog : 1. 创建  [陈子遥];
     ** @Date 2022/3/12 : 16:16
     ** @param
     ** @return
     */

    Result findBothStatus();

    /**
     *<P> @MethodName: findExamByTrainId
     *<P> @TODO 根据培训的ID生成试题
     *<P> @param trainId:
     *<P> @return: java.sql.ResultSet
     *<P> @Date 2022/3/12 10:30
    **/
    Result findExamByTrainId(Integer trainId);

    Result examMark(ExamAnswerVo examAnswer);
}
